// #include <iostream>
// using namespace std;
// int main()
// {
//     cout << "hello,world" << endl;
//     for (int n = 4; n > 0; n--)
//     {
//         for (int j = n; j > 1; j--)
//         {
//             cout << "**";
//         }
//         cout << endl;
//     }
//     printf("%5d\n", 123456);

//     return 0;
// }namespace A{
#include <stdio.h>
#include <stdlib.h>
int rand = 10;
// C语言没办法解决类似这样的命名冲突问题，所以C++提出了namespace来解决
namespace A
{
    int rand = 10;
    int a = 20;
    int b = 30;

    int add(int x, int y)
    {
        return (x + y);
    }
}

//2.部分展开
using A::a;

// 3.全部展开
using namespace A;
// C语言没办法解决类似这样的命名冲突问题，所以C++提出了namespace来解决
int main()
{
    //1.直接引用命名空间A
    printf("%d\n", A::rand);

    //2.使用using指定的展开
    //printf("%d\n", A::rand);
    printf("%d\n", a);

    //3.使用using namaspace A 全部展开
    printf("%d\n", A::rand);
    printf("%d\n", a);
    printf("%d\n", b);
    printf("%d", add(a, b));

    return 0;
}
// 编译后后报错：error C2365: “rand”: 重定义；以前的定义是“函数”